home *** CD-ROM | disk | FTP | other *** search
- unit singleform2;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls, singlebase;
-
- type
- TOne = class (TSingleton)
- private
- FValue: Integer;
- procedure SetValue(const Value: Integer);
- public
- property Value: Integer read FValue write SetValue;
- end;
-
- TTwo = class (TSingleton)
- private
- Ftext: string;
- procedure Settext(const Value: string);
- public
- property text: string read Ftext write Settext;
- end;
-
- TForm1 = class(TForm)
- Button1: TButton;
- Button2: TButton;
- Memo1: TMemo;
- Button3: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- public
- { Public declarations }
- end;
-
- var
- Form1: TForm1;
-
- implementation
-
- {$R *.DFM}
-
- procedure TForm1.Button1Click(Sender: TObject);
- var
- o1: TOne;
- begin
- o1 := TOne.Create;
- Memo1.Lines.Add ('o1: ' + IntToStr (Integer (Pointer (o1))));
- o1.Free; // useless
- end;
-
- procedure TForm1.Button2Click(Sender: TObject);
- var
- t1: TTwo;
- begin
- t1 := TTwo.Create;
- Memo1.Lines.Add ('t1: ' + IntToStr (Integer (Pointer (t1))));
- end;
-
- { TTwo }
-
- procedure TTwo.Settext(const Value: string);
- begin
- Ftext := Value;
- end;
-
- { TOne }
-
- procedure TOne.SetValue(const Value: Integer);
- begin
- FValue := Value;
- end;
-
- procedure TForm1.Button3Click(Sender: TObject);
- begin
- Memo1.Lines.Add(TSingleton.ListClasses);
- end;
-
- end.
-